package com.xiaozhichao.javaapi.sort;

public class ComputeSort {

    /**
     * 冒泡
     * 最佳情况：T(n) = O(n)   最差情况：T(n) = O(n2)   平均情况：T(n) = O(n2)
     */
    public static int[] bubbling(int[] array){
        if(array.length<=2){
            return array;
        }
        for(int i=0;i<array.length ;i++){
            for(int j=0;j<array.length-1-i ;j++){
                if(array[j] > array[j+1]){
                    int temp = array[j];
                    array[j] = array[j+1];
                    array[j+1] = temp;
                }
            }
        }
        return array;
    }

    /**
     * 选择
     * 最佳情况：T(n) = O(n2)  最差情况：T(n) = O(n2)  平均情况：T(n) = O(n2)
     */
    public static int[] choose(int[] array){
        if(array.length<=2){
            return array;
        }
        for(int i=0;i<array.length ;i++){
            int index = i;
            for(int j=i;j<array.length ;j++){
                if(array[index] > array[j]){
                    index = j;
                }
            }
            int temp = array[index];
            array[index] = array[i];
            array[i] = temp;

        }
        return array;
    }
}
